System and method for resizing images prior to upload

ABSTRACT

A system and method of resizing an image on a mobile communication device prior to transmitting to an online image repository is disclosed. In accordance with one embodiment, the method comprises: determining a size of an original image; determining whether there are any default file sizes to which the original image may be resized; when a default file size does not exist, receiving a custom image size, resizing the original image in accordance with the received custom image size to create a resized image, and transmitting the resized image to the online image repository.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 11/754,769, filed May 29, 2007, the content of which isincorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates generally to systems and methods forresizing images prior to upload.

BACKGROUND

Recent advances with handheld wireless communication devices haveresulted in the introduction of integrated cameras capable of capturingimages at a resolution sufficient for many consumer applications. Oncecaptured, the images may be stored in available memory on thecommunication device, and viewed on a display provided on thecommunication device. However, the available memory on the communicationdevice may be limited, and a user may not be able to capture and storenew images in the communication device without deleting images or otherfiles already stored in memory. As well, while the user may enjoy theimages on the communication device, the user may want to share theimages with other users. However, there may be carrier networkrestrictions on transmission bandwidth. Also, if the images are to beshared, the ability to easily add descriptive information and locationinformation about the images may be desirable.

Thus, there remains a need for an improved system and method forresizing images prior to upload.

BRIEF DESCRIPTION OF THE DRAWINGS

In the figures which illustrate exemplary embodiments:

FIG. 1 is a schematic block diagram of various components that may befound in a handheld mobile communication device;

FIG. 2 is an illustrative example of a handheld mobile communicationdevice that may provide an operating environment;

FIG. 3 is a block diagram of an illustrative example of a networkenvironment in which various embodiments may be practiced;

FIGS. 4A to 4K are screen captures of illustrative user interfaces inaccordance with various embodiments; and

FIG. 5 is a flowchart of an illustrative method for resizing imagesprior to upload to an image repository in accordance with an embodiment.

DETAILED DESCRIPTION

As noted above, the present disclosure relates generally to systems andmethods for resizing images prior to upload to an image repository.

In an illustrative embodiment, the teachings of the present disclosuremay be practiced with a handheld mobile communication device in awireless operating environment. Shown in FIG. 1 is a schematic blockdiagram of an illustrative handheld mobile communication device 100. Thecommunication device 100 may comprise a number of components, includinga main processor 102 which controls the overall operation ofcommunication device 100. Communication functions, including data andvoice communications, may be performed through a communication subsystem104. The communication subsystem 104 may receive messages from and sendmessages to a wireless network 200.

The main processor 102 may also interact with additional subsystems suchas a random access memory (RAM) 106, a flash memory 108, a display 110,an auxiliary input/output (I/O) subsystem 112, a data port 114, akeyboard 116, a trackball 117, a speaker 118, a microphone 120,short-range communications 122, a GPS subsystem 124, a camera module126, and associated camera logic 128.

Some of the subsystems of the communication device 100 may performcommunication-related functions, whereas other subsystems may provide“resident” or on-device functions. By way of example, the display 110and the keyboard 116 may be used for both communication-relatedfunctions, such as entering a text message for transmission over thenetwork 200, and device-resident functions such as a calculator or tasklist. The trackball 117 may be used for various navigation functions,such as navigating through a graphical user interface (GUI) menudisplayed on display 110. The trackball 117 may also be configured witha secondary actuation feature, such as allowing a user to depress thetrackball, to allow selection of a highlighted item.

The GPS subsystem 124 may include a GPS antenna to receive signalstransmitted by a minimum number of in-view GPS satellites required toacquire accurate latitude and longitude coordinates. The GPS system mayalso be operatively connected to the main processor 102 to pass theacquired latitude and longitude coordinates to one or more softwareapplications 134, and to store the latitude and longitude coordinates asmay be required into flash memory 108 or RAM 106. If the GPS antenna isnot able to receive a signal from a sufficient number of in-view GPSsatellites (e.g. because of buildings, bridges, or other obstructions,or because the communication device 100 is being used indoors), it maynot be possible to acquire the GPS coordinates.

The camera module 126 may be adapted to capture an image through a lensonto a light sensitive image sensor such as a charge coupled device(CCD) sensor array or a complementary metal oxide semiconductor (CMOS)sensor array. The camera lens may be a fixed focus lens, or a variablefocus lens with or without zoom features and controlled by camera logic128 to focus an image onto the CCD or CMOS sensor array. The size andpixel density of the CCD or CMOS sensor array may be suitably selectedfor the image resolution required for a particular application. Cameralogic 128 may also control the camera lens aperture and/or shutter speedby incorporating a suitable light exposure meter. Image capture usingcamera module 126 may initiated by a user controlling a dedicated camerashutter, or a context dependent programmable button or key (on keyboard116, for example) that may act as a camera shutter button.

Once captured by the CCD or CMOS sensor array, the image may then beprocessed by camera logic 128 into a suitable digital image file formatsuch as Joint Photographic Experts Group (JPEG), Tagged-Image FileFormat (TIFF), Bit Mapping (BMP), different variations on these standardimage file formats, or a vendor proprietary RAW image format. The imagefile format may allow for the addition of image meta

data to an image file in an industry standards exchangeable image fileformat (EXIF), or in some vendor proprietary meta-data format.

The image file may then be stored in available device storage such asRAM 106 or flash memory 108, and displayed on display 110. As will bedescribed in detail further below, in order to minimize consumption ofpotentially scarce memory resources on communications device 100, thecaptured image may be transmitted from communications device 100 to anImage Repository.

Still referring to FIG. 1, operating system software used by the mainprocessor 102 is typically stored in a persistent store such as flashmemory 108. Those skilled in the art will appreciate that the operatingsystem, specific device applications, or parts thereof, may betemporarily loaded into a volatile store, such as the RAM 106, forprocessing by main processor 102.

The communication device 100 may send and receive communication signalsover the wireless network 200 after required network registration oractivation procedures have been completed. Network access may beassociated with a subscriber or user of the communication device 100.

The communication device 100 may be a battery-powered device and mayinclude a battery interface 132 for receiving one or more rechargeablebatteries 130. In some embodiments, the battery 130 may be a smartbattery with an embedded microprocessor. The battery interface 132 iscoupled to a regulator (not shown), which assists the battery 130 inproviding power V+to the communication device 100. The battery 130 maybe used to power all components and modules in the communication device100, including the camera module 126 and associated camera logic 128.

The main processor 102, in addition to its operating system functions,enables execution of various software applications 134 on thecommunication device 100. A subset of software applications 134 thatcontrol basic device operations, including data and voice communicationapplications, will normally be installed on the communication device 100during its manufacture.

The software applications 134 may include a messaging application 136.The messaging application 136 can be any suitable software program thatallows a subscriber or user of the communication device 100 to send andreceive wireless text communications. Various alternatives exist for themessaging application 136 as is well known to those skilled in the art.Messages that have been sent or received by the user are typicallystored in local storage such as flash memory 108 of the communicationdevice 100, or in some other suitable storage element in thecommunication device 100. In an alternative embodiment, some of the sentand received messages may be stored remotely from the communicationdevice 100 such as in a data store of an associated host system that thecommunication device 100 communicates with. In an embodiment, themessaging application 136 may include a Message List user interface thatis configured to allow a user to see a list of message objects (i.e.email messages) in a convenient list form. This will be described indetail further below.

The software applications 134 may also include a GPS map application 146for providing geographic navigation, and location coordinates forgeotagging objects. GPS map application 146 may be configured tooperatively connect to GPS subsystem 124 to receive GPS latitude andlongitude coordinates for a current position of the communication device100. GPS map application 146 may also store scalable maps of variousgeographic regions in order to show the current position ofcommunication device 100 on the map. As well, the GPS map application146 may be configured to obtain latitude and longitude locationcoordinates by allowing a user to select a position on the GPS map.

Still referring to FIG. 1, communication device 100 may execute an ImageApplications Module 148 that may be operatively integrated with cameramodule 126, camera logic 128, main processor 102, RAM 106, display 110and various other modules and components to provide various imageapplication functions for the images captured by the camera module 126.Image Applications Module may include various sub modules such as anImage Upload Module 148B, an Image Resizing Module 148C, a MessageIntegration Module 148D, and an Image Geotagging Module 148E. Thesevarious sub modules may interact with each other, and with otherapplication modules such as the messaging application 136, Internetbrowser module 138, address book module 142, GPS map module 146, etc. inorder to perform various functions. Image Applications Module 148 andits sub modules will be described in more detail further below.

The communication device 100 may further include a device state module140, an address book 142, a Personal Information Manager (PIM) 144, andvarious other modules 150. Additional software applications may also beloaded onto the communication device 100 through at least one of thewireless network 200, the auxiliary I/O subsystem 112, the data port114, the short-range communications subsystem 122, or other devicesubsystem 124.

Now referring to FIG. 2, shown is an illustrative front view of ahandheld mobile communication device 100 that may provide a suitableoperating environment. As shown, the communication device 100 mayinclude a display 110, a keyboard 116, and other input or navigationmeans such as a trackball 117. The display 110 may be configured todisplay various screens allowing the user of device 100 to view screenoutputs from the various software applications 134, including the imageapplications 148. Display 110 may also be configured to provide atouch-sensitive screen input in response to a prompt or query displayedon display 110. The communication device 100 may further include acamera lens that may be used to capture an image as described above withreference to FIG. 1. In an embodiment, the integrated camera 126 mayprovide a camera lens 127 on the back of the communication device 100,such that a user may use the display 110 as a camera viewfinder forframing an image.

Now referring to FIG. 3, shown is a schematic block diagram of anillustrative network environment 300 in which various embodiments of thedisclosure may be practiced. As shown, network environment 300 mayinclude a device server 310 operatively connected to the handheld mobilecommunication device 100 via a wireless carrier network 320. An InternetService Provider (ISP) server 330 may also be provided in the networkenvironment 300 such that a user of device 100 may access the Internet340 from the device 100.

In an embodiment, the Internet 340 may provide access to an ImageRepository 360. Membership to use the Image Repository 360 may be free,or may be by paid subscription, for example. The Image Repository 360may also be accessible by a third party 350 that has membership to theImage Repository 360. As well, the Image Repository 360 may be accessedfrom other handheld mobile communication devices 100B within wirelesscarrier network 320, or from other compatible communication devices 100Cwith access to Internet 340.

Now referring to FIGS. 4A to 4K, shown are illustrative user interfacesin accordance with various embodiments. First, referring to FIG. 4A,shown is an illustrative integrated camera user interface screen 400Adisplaying an illustrative image “IMG00027” captured by the integratedcamera (e.g. by camera module 126 and camera logic 128 as previouslydescribed). As shown, the camera user interface 400A may include iconssuch a “camera mode” icon 402A, a “delete image” icon 404A, a “cropimage” icon 406A, a “mail image” icon 408A, and an “images folder” icon410A.

Referring to FIG. 4B, shown is a camera user interface screen 400B nowincluding a “Send . . . ” pop-up menu 402B. In this illustrativeexample, the “Send . . . ” pop

up menu 402B includes a number of menu options including “Send as Email”404B, “Send as MMS (Multimedia Messaging Service)” 406B, and “Send To(Image Repository)” 408B (e.g. where the Image Repository may be anonline image repository such as Flickr™, for example). These “Send . . .” options will be described in more detail further below.

FIG. 4C shows a user interface screen 400C with a context menu 402C thatmay also provide the “Send . . . ” menu options as described above,including “Send to (Image Repository)” 408C. This context menu 402C maybe another one of several ways in which the “Send to (Image Repository)”option may be accessed, and will be discussed in more detail furtherbelow.

Now referring to FIG. 4D, shown is a user interface screen 400D with anoption settings menu 402D for the “Send to (Image Repository)” option inwhich records of images uploaded to an Image Repository may beintegrated into a Message List. The Message List may be a chronologicallisting of different types of objects that may include, for example,email messages, message status reports, telephone call records, etc.This Message List integration will be described in more detail furtherbelow.

Now referring to FIG. 4E, shown is a user interface screen 400E with a“Send to (Image Repository)” window 408E in which a number of text entryfields are provided to allow the user to add descriptive information,such as “Title”, “Description”, and “Tags”. Furthermore, the “Send to(Image Repository)” window may include various other options such as ageographic “Location” field 430D, a “Privacy” setting 432D, and an image“Resize to” setting 434D. These various settings and features will bediscussed in more detail further below.

FIG. 4F shows a user interface screen 400F with an illustrative “Send to(Image Repository)” window 408F which may include various options forselecting a geographic location, such as “None” 430F, a “Where I Am . .. ” option 432F, an “Enter Address . . . ” option 434F, a “From AddressBook . . . ” option 436F, and a “Favorites” option 438F. These variousoptions will be discussed in more detail further below.

Now referring to FIG. 4G, shown is a user interface screen 400G with anillustrative “Send to (Image Repository)” screen 408G with an “EnterAddress” pop-up window 440G. For example, in order to obtain geographiccoordinates by address, a user may fill out one or more of the followingfields: Address 442G, City 444G, State/Province 446G, and Country 448G.Alternatively, FIG. 4H shows a user interface 400H with an illustrativeexample of an address list 442H from which a target address 444H may beselected. With the specification of an address, or the selection of atarget address from a list, the corresponding geographic coordinates maybe obtained from a GPS mapping application (e.g. GPS map module 146).This feature will be described in more detail further below.

Now referring to FIG. 4I, shown is a user interface screen 400I with anillustrative list of location “Favorites” 438I from which a “favorite”location 450I may be selected for the purposes of obtaining thecorresponding geographic coordinates. This feature will be described inmore detail further below.

Now referring to FIG. 4J, shown is a user interface screen 400J with anillustrative “Send To (Image Repository)” screen 408J in which the“Where I Am . . . ” option has been selected to obtain the geographiclocation. In order to determine the current location, the device 100 maysearch for and try to acquire GPS signals using the GPS subsystem 124,as indicated in pop-up message 460J.

Now referring to FIG. 4K, shown is a user interface screen 400K with anillustrative geographic location menu in which a new location entry 462K(e.g. “Here @ Mar 14 12:04a”) has been added. The use of this geographiclocation acquired through the “Where I Am . . . ” option will bedescribed in more detail further below.

Now referring to FIG. 5, and referring back to FIGS. 4A to 4K asnecessary, various embodiments will be described in detail.

In an embodiment, a user may resize an image on the communication device100 prior to uploading to save bandwidth and memory space. As discussedearlier, image files captured by camera module 126 may range in sizedepending on the size of the CCD or CMOS sensor array, and the imageresolution selected via the camera logic 128. As an illustrativeexample, a default image file size of a camera integrated incommunication device 100 may be about 77 KB to 120 KB. With higherresolution CCD or CMOS sensor arrays, the original image file size maybe significantly larger, in the order of several megabytes or more. Inorder to upload and share images with others, the default image may needto be resized prior to upload.

FIG. 5 shows a flowchart of an illustrative method 500 for resizingimages on the communication device 100 prior to upload to an ImageRepository in accordance with an embodiment. As shown, method 500 beginsand at block 502 determines the size of the original image to beuploaded. At decision block 504, method 500 may then determine if thereare any default file sizes to which the original image may be resized.

In an embodiment, an Image Resizing Module 148C may be configured toprovide a number of selectable options for image resizing, such as thefollowing illustrative examples:

1) Original—No resizing is done to the image and the image may beuploaded at its original size. This may be the default image size,unless the user specifies that he or she would like the image to beresized.

2) Small—The image may be scaled such that the resulting image has noedge longer than 240 pixels, for example. Relative proportions of theimage are maintained, such that the resizing does not elongate orflatten the image in any direction. In this illustrative example, if theoriginal image had no edge larger than 240 pixels to begin with, then noaction need be taken. This may also be the standard “small” image sizeon Image Repository, for example.

3) Medium—The image may be scaled such that the resulting image has noedge longer than 500 pixels, for example. Relative proportions of theimage are maintained. If the original image had no edge larger than 500pixels to begin with, then no action need be taken. This may be thestandard “medium” image size on Image Repository, for example.

If yes at decision block 504, method 500 may proceed to block 506 todisplay the resizing options, and request that the user select one ofthe resizing options to use. Upon selection method 500 may proceed todecision block 510, as discussed further below. If no at decision block504, method 500 may proceed to block 508 to request that the user entera custom image size to resize to. For example, method 500 may requestthat the user provide the pixel dimensions of the longest side of theimage. Method 500 may then proceed to decision block 510.

In an embodiment, image meta-data associated with an image may bepreserved such that the meta-data continues to be available afterresizing and uploading of the image. The meta-data may be stored in anindustry standard format such as EXIF, for example, to allow a widerange of image and photo software applications to read and display themeta-data.

In an embodiment, the image meta-data may be preserved by removing theentire meta-data section of an image file prior to resizing, if it isavailable. This entire block of information may then be inserted intothe resized image, and the resized image with the EXIF data may be madeavailable for viewing, or upload to an Image Repository 360.

In another embodiment, the EXIF data may be updated to include the pixeldimensions of the resized image. For example, if one of the “small” or“medium” sizes specified above is selected, then the new size of theimage may be used to replace the original pixel size. The updated EXIFdata may then be inserted into the resized image, and the resized imagemay be made available for viewing, or upload to an Image Repository 360.

Thus, at decision block 510, method 500 may identify if the originalimage contains any meta-data (e.g. EXIF data). If yes, method 500 mayproceed to block 512 where the meta-data is read from the original imagefile, and saved as a meta-data file separately from the original file.If no, method 500 proceeds directly to block 514.

At block 514, method 500 may proceed to resize the original image to animage of different size based on the selected default file size (e.g.small, medium), or based on a custom file size select by the user, andoutput a newly resized image file.

At block 516, method 500 may obtain the dimensions of the newly resizedimage and replace the original image size with the size of the newresized image.

At block 518, method 500 may then insert the meta-data file back intothe resized image file.

At block 520, method 500 may prepare the combined, resized image filewith EXIF data for upload to the Image Repository. Method 500 then ends.

In an alternative embodiment, the Image Resizing Module 148C may beconfigured to verify available memory on the Image Repository prior toimage upload. As an illustrative example, Image Resizing Module 148C maycheck the amount of memory (in Kilobytes) that the user has used ontheir Image Repository account this month, and how much space remains inthe user's monthly allotment. If the user has an Image Repositoryaccount with a specified allotment of upload usage per month (e.g. asmeasured in Kilobytes or Megabytes), and the user is coming close theallocated amount, the Image Resizing Module 148C may be configured toadvise the user, and recommend a storage conservation mode to reducestorage usage on the Image Repository by resizing an image to beuploaded to a smaller size. If the user selects the storage conservationmode, then the Image Resizing Module 148C may be configured to defaultto a specified reduced size. Alternatively, the Image Resizing Module148C may be configured to automatically select a default image size toresize to based on the available memory in the Image Repository.

In another embodiment, the Image Resizing Module 148C may be configuredto respond to a running total for bandwidth usage on the wirelesscarrier network 320. Generally speaking, uploading images may not be aregular or scheduled event, but heavy users of the image uploadingfeature may be using much more bandwidth than light users or users thatuse the communication device 100 only for text communications. Forexample, if a typical user of communication device 100 uses 1 MB of datatransfer per month, a heavy Image Repository user could use that much ina single day. This running total for bandwidth usage may be monitored ina bandwidth counter or meter that may be provided on communicationdevice 100. If the user has a subscriber account on wireless carriernetwork with certain data upload restrictions, and the user is comingclose the restricted amount, then the Image Resizing Module 148C may beconfigured to automatically enter a conservation mode to reducebandwidth usage by resizing an image to be uploaded to a smaller size.Similarly, if the user selects a memory conservation mode, then theImage Resizing Module 148C may be configured to automatically default toa reduced size.

Thus, in an aspect of the disclosure, there is provided a method ofresizing an image on a handheld mobile communication device prior touploading to an image repository, comprising: determining the size of anoriginal image; determining any upload size restrictions for uploadingthe image to the image repository; and in dependence upon the uploadsize restrictions, resizing the original image to a new resized image tomeet the upload size restrictions.

In an embodiment, the method further comprises: specifying at least oneselectable image size for resizing the original image; receiving a userselection of a desired image size; and resizing the original image tothe user selected desired image size.

In another embodiment, the method further comprises selecting the imagesize automatically in dependence upon image upload bandwidth.

In another embodiment, the method further comprises selecting the imagesize automatically in dependence upon storage space on the imagerepository.

In another embodiment, the method further comprises extracting meta-datafrom the image prior to resizing; resizing the original image to the newresized image; and modifying the extracted meta-data to replace theoriginal image size with the size of the new resized image.

In another embodiment, the method further comprises uploading themodified extracted meta-data to the image repository.

In another embodiment, the method further comprises inserting themodified meta-data into the new resized image; and uploading the newresized image including the modified meta-data to the image repository.

In another aspect of the disclosure, there is provided a system forresizing an image on a handheld mobile communication device prior touploading to an image repository, the system comprising an imageresizing module adapted to: determine the size of an original image;determine any upload size restrictions for uploading the image to theimage repository; and resize the original image to a new resized imageto meet the upload size restrictions.

In an embodiment, the image resizing module is further adapted to:specify at least one selectable image size for resizing the originalimage; receive a user selection of a desired image size; and resize theoriginal image to the user selected desired image size.

In another embodiment, the image resizing module is further adapted toselect the image size automatically in dependence upon image uploadbandwidth.

In another embodiment, the image resizing module is further adapted toselect the image size automatically in dependence upon storage space onthe image repository.

In another embodiment, the image resizing module is further adapted to:extract meta-data from the image prior to resizing; resize the originalimage to the new resized image; and modify the extracted meta-data toreplace the original image size with the size of the new resized image.

In another embodiment, the image resizing module is further adapted toprepare the modified extracted meta-data for upload to the imagerepository.

In another embodiment, the image resizing module is further adapted to:insert the modified meta-data into the new resized image; and preparethe new resized image including the modified meta-data for upload to theimage repository.

In another aspect of the disclosure, there is provide a data processorreadable medium containing data processor code that when loaded onto amobile handheld communication device adapts the device to resize animage prior to uploading the image to an image repository, the dataprocessor readable medium comprising: code for determining the size ofan original image; code for determining any upload size restrictions foruploading the image to the image repository; and code for resizing theoriginal image to a new resized image to meet the upload sizerestrictions in dependence upon the upload size restrictions.

In an embodiment, the data processor medium further comprises: code forspecifying at least one selectable image size for resizing the originalimage; code for receiving a user selection of a desired image size; andcode for resizing the original image to the user selected desired imagesize.

In another embodiment, the data processor readable medium furthercomprises code for selecting the image size automatically in dependenceupon image upload bandwidth.

In another embodiment, the data processor readable medium furthercomprises code for selecting the image size automatically in dependenceupon storage space on the image repository.

In another embodiment, the data processor readable medium furthercomprises: code for extracting meta-data from the image prior toresizing; code for resizing the original image to the new resized image;and code for modifying the extracted meta-data to replace the originalimage size with the size of the new resized image.

In another embodiment, the data processor readable medium furthercomprises code for uploading the modified extracted meta-data to theimage repository.

While illustrative embodiments have been described above, it will beappreciated that various changes and modifications may be made. It isunderstood that such changes and modifications come within the scope ofthe present disclosure.

1. A method of resizing an image on a mobile communication device priorto transmitting to an online image repository, comprising: determining asize of an original image; determining whether there are any defaultfile sizes to which the original image may be resized; when a defaultfile size does not exist, receiving a custom image size, resizing theoriginal image in accordance with the received custom image size tocreate a resized image, and transmitting the resized image to the onlineimage repository.
 2. The method of claim 1, further comprising, when oneor more default file sizes exist, displaying a plurality of sizingoptions on a display of the handheld mobile communications device,wherein at least two sizing options are each associated with apredetermined image size and wherein each predetermined image sizespecifies a size of an image after resizing, receiving a selection ofone of the sizing options, resizing the original image in accordancewith the selected sizing option to create a resized image, andtransmitting the resized image to the online image repository.
 3. Themethod of claim 2, wherein the predetermined image size is specified asa maximum size of any side of the image.
 4. The method of claim 1,further comprising displaying an option to maintain the original imagewithout resizing.
 5. The method of claim 1, further comprising:extracting meta-data from the original image prior to resizing;modifying the extracted meta-data to replace the original image sizewith a size of the resized image.
 6. The method of claim 5, furthercomprising transmitting the modified extracted meta-data to the onlineimage repository.
 7. The method of claim 5, further comprising:inserting the modified meta-data into the resized image; andtransmitting the resized image including the modified meta-data to theonline image repository.
 8. The method of claim 1, further comprising:comparing a total bandwidth usage of a subscriber account associatedwith the mobile communication device to an upload restriction amount ofthe subscriber account; entering a conservation mode on the mobilecommunication device when the total bandwidth usage is within athreshold amount of the upload restriction amount of the subscriberaccount; when in the conservation mode, resizing the original image tocreate a resized image.
 9. The method of claim 1, further comprising:determining an amount of space which remains in an amount of memoryallocated to an image repository account associated with the mobilecommunication device; entering a storage conservation mode on the mobilecommunication device in accordance with the amount of space whichremains; and when in the storage conservation mode, resizing theoriginal image in accordance with to create a resized image.
 10. Amethod of resizing an image on a mobile communication device prior totransmitting to an online image repository, comprising: comparing atotal bandwidth usage of a subscriber account associated with the mobilecommunication device to an upload restriction amount of the subscriberaccount; entering a conservation mode on the mobile communication devicewhen the total bandwidth usage is within a threshold amount of theupload restriction amount of the subscriber account; when in theconservation mode, resizing an original image to create a resized imageand transmitting the resized image to the online image repository. 11.The method of claim 10, further comprising, when in the conservationmode, displaying a plurality of sizing options on a display of thehandheld mobile communications device, wherein at least two sizingoptions are each associated with a predetermined image size and whereineach predetermined image size specifies a size of an image afterresizing, receiving a selection of one of the sizing options, resizingthe original image in accordance with the selected sizing option tocreate the resized image.
 12. The method of claim 10, wherein theresizing comprises resizing the original image in accordance with thecomparison of the total bandwidth usage of the subscriber accountassociated with the mobile communication device to the uploadrestriction amount of the subscriber account to create the resizedimage.
 13. The method of claim 10, wherein the upload restriction amountof the subscriber account is allocated for a predetermined duration. 14.The method of claim 10, further comprising: extracting meta-data fromthe original image prior to resizing; modifying the extracted meta-datato replace the original image size with a size of the resized image. 15.A method of resizing an image on a mobile communication device prior totransmitting to an online image repository, comprising: determining anamount of space which remains in an amount of memory allocated to animage repository account associated with the mobile communicationdevice; entering a storage conservation mode on the mobile communicationdevice when the amount of space which remains is within a thresholdamount of the amount of memory allocated to the image repositoryaccount; and when in the storage conservation mode in, resizing theoriginal image to create a resized image and transmitting the resizedimage to the online image repository.
 16. The method of claim 15,further comprising, when in the storage conservation mode, displaying aplurality of sizing options on a display of the handheld mobilecommunications device, wherein at least two sizing options are eachassociated with a predetermined image size and wherein eachpredetermined image size specifies a size of an image after resizing,receiving a selection of one of the sizing options, resizing theoriginal image in accordance with the selected sizing option to createthe resized image.
 17. The method of claim 15, further comprising, whenin the storage conservation mode, displaying a reduced image size inaccordance with the amount of space which remains in the memoryallocated to the image repository account; resizing the original imagein accordance with the reduced image size in response correspondinginput selecting the reduced image size to create a resized image. 18.The method of claim 15, wherein the resizing comprises resizing theoriginal image in accordance with the amount of space which remains inthe memory allocated to the image repository account.
 19. The method ofclaim 15, wherein the memory is allocated to the image repositoryaccount for a predetermined duration.
 20. The method of claim 15,further comprising: extracting meta-data from the original image priorto resizing; modifying the extracted meta-data to replace the originalimage size with a size of the resized image.